/** 
 *  OLMAP 方法函数
 *  View操作方法 
 *  @author Goog2023
 */
import {
	isFun
} from './fCommon.js'
// 获得view
function fGetView() {
    return this.getView()
}

// fit方法 视野移动到一个范围
function fFit(...params) {
    return fGetView.call(this).fit(...params);
}

// 计算可视区域范围extent
function fCalcExtent() {
    return fGetView.call(this).calculateExtent(this.getSize());
}

// 动画平移指定位置

/**********************************************
 * Tips: 这里animate的参数顺序决定动画的顺序 
 * 比如这里代表先平移到中心点，再缩放视角     
 * *******************************************/

function fAnimate(...params) {
    fGetView.call(this).animate(...params);
}

function fGetSize() {
    return fGetView.call(this).getSize();
}

function fGetZoom() {
    return fGetView.call(this).getZoom();
}

function fGetCenter() {
    return fGetView.call(this).GetCenter()
}

function fSetZoom(zoom){
    isFun(zoom)?zoom(fGetZoom.call(this)):zoom;
}
function fSetSize(zoom){
    isFun(zoom)?zoom(fGetSize.call(this)):zoom;
}
function fSetCenter(zoom){
    isFun(zoom)?zoom(fGetCenter.call(this)):zoom;
}

export {
    fGetView,
    fFit,
    fCalcExtent,
    fAnimate,
    fGetCenter,
    fGetSize,
    fGetZoom,
    fSetCenter,
    fSetSize,
    fSetZoom
}